package com.ojoin.trade.supplyloan_core.web.service.impl.catchdata.httpClient;
//
//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//
//import org.apache.http.impl.client.CloseableHttpClient;
//import org.jsoup.nodes.Document;
//import org.jsoup.nodes.Element;
//import org.jsoup.select.Elements;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.context.annotation.Scope;
//import org.springframework.stereotype.Service;
//
//import com.ojoin.trade.common.Constants;
//import com.ojoin.trade.common.exception.BusinessException;
//import com.ojoin.trade.common.utils.LogUtils;
//import com.ojoin.trade.common.utils.TimeUtils;
//import com.ojoin.trade.supplyloan_core.utils.MyJsoup;
//import com.ojoin.trade.supplyloan_core.utils.catchdata.httpclient.HttpClientUtil;
//import com.ojoin.trade.supplyloan_core.web.domain.TbSlPlatformUser;
//import com.ojoin.trade.supplyloan_core.web.domain.TbSlSupplyInventory;
//import com.ojoin.trade.supplyloan_core.web.domain.TbSlSupplyPayment;
//import com.ojoin.trade.supplyloan_core.web.service.impl.catchdata.CloseableHttpClientSLDataCatchBaseServiceImpl;
//
///**
// * 
// * 1.未结算金额：结算单管理》未结款结算单 统计规则： 所有记录金额相加
// * 
// * 2.库存金额：验收单管理》采购单入库-退货出库 根据最新未结款结算单获取结算结束日期，然后获取结算结算日期到今天的出入库金额差
// * 
// */
//
///*@Scope("prototype")
//@Service*/
//public class SupplierGOMEDataCatchServiceImpl extends
//		CloseableHttpClientSLDataCatchBaseServiceImpl {
//
//	// 验证码重试
//	private static int verifycodeRetryCount = 3;
//
//	public SupplierGOMEDataCatchServiceImpl() {
//	}
//
//	public SupplierGOMEDataCatchServiceImpl(TbSlPlatformUser platformUser) {
//		super(platformUser);
//	}
//
//	private Logger log = LoggerFactory
//			.getLogger(SupplierGOMEDataCatchServiceImpl.class);
//
//	public int getDefaultDriverTimeOut() {
//		return 5;
//	}
//
//	@Override
//	public boolean LoginByUserInfo(String baseUrl, String username,
//			String password) {
//
//		boolean isLoginSuccess = false;
//		
//		String url = "http://b2bi.gome.com.cn/j_spring_security_check"; 
//		
//		isLoginSuccess =  HttpClientUtil.loginByPos(this.getHttpClient(), url, null, Constants.ENCODING);
//
//		return isLoginSuccess;
//	}
//
//	// 验证码处理
//	public void verifycode() {
//
//	}
//  
//	public static void main(String[] args) {
//		boolean isLoginSuccess = false;
// 
//		String etime = TimeUtils.getCurDate();
//		String stime = etime.substring(0, etime.length()-2)+"01";
//		
//		System.out.println(stime);
//		String urlBase = "https://gomeb2b.gome.com.cn:8443/cas/";
//		
//		String urlHome = "http://b2bi.gome.com.cn/mainLogon.hlt";
//		
//		String URL_IMG = "https://gomeb2b.gome.com.cn:8443/cas/servlet/captcha.jpg";
//		
//		String url = "http://b2bi.gome.com.cn/j_spring_security_check";
//		
//		String curl = "http://b2bi.gome.com.cn/gmol/sellBillQry/query.hlt";
//		
//		//HttpsClientUtil httpClientUtil = new HttpsClientUtil();
//		
//		// byte[] bytes = httpClientUtil.doGetRetunByte(URL_IMG,charset);
//
//		// VerityCodeUtils.saveIMG(bytes, "D:\\liaowuhen\\guomei.jpg");
//
//		// String code =
//		// VerityCodeUtils.getVerifyCode(VerityCodeUtils.VERIFYTYPE_BYTE, "",
//		// bytes);
//		// 
//		// System.out.println(code);
//		try { 
//		CloseableHttpClient httpCilent = HttpClientUtil.getHttpclient();
//			  
//			isLoginSuccess =  HttpClientUtil.loginByPos(httpCilent, url, null, Constants.ENCODING);
//			
//			
//			
//			
//			Map<String, String> map = new HashMap<String, String>();
//			
//			
//			
//			
//			map.put("grnStatus", 1+"");
//
//			
//			map.put("grnModel.transactionDateStart", stime);
//			map.put("grnModel.transactionDateEnd", etime);
//			
//			
//			map.put("grnModel.vendorTaxno", "110115682862600");
//			map.put("page.pageSize", "50"); 
//			map.put("page.pageNo", "1");
//			map.put("page.totalPages", "1");
//			map.put("page.jumpNumber", "1");
//			
//			
//			String html = HttpClientUtil.doPost(httpCilent, curl, map,Constants.ENCODING);
//	
//			Document doc = MyJsoup.getDocumnetByStr(html);
//			
//			Element table = doc.getElementById("row");
//			
//			
//			if (null != table) {
//				Elements trs = table.getElementsByTag("tr");
//				if(null != trs && trs.size() >0){
//					for(int i=0;i<trs.size();i++){
//						if(i>0){
//							Element tr = trs.get(i);
//							Elements tds = tr.getElementsByTag("td");
//							
//							String balanceOrderId = tds.get(5).text();
//							String balanceStartTime = tds.get(6).text();
//							String balanceAccount = tds.get(10).text();
//							 
//							
//							System.out.println("balanceOrderId-->"+balanceOrderId+"balanceStartTime-->"+balanceStartTime+"balanceAccount-->"+balanceAccount);
//							
//							
//						}
//							
//							
//						
//					}
//					
//				}
//				
//			}
//
//		} catch (Exception e) {
//			
//			e.printStackTrace();
//		}
//	}
//	
//	@Override
//	public String catchSupplierName() throws BusinessException {
//
//		String name = "";
//
//		return name;
//	}
//
//	@Override
//	public String catchSupplierAccount() throws BusinessException {
//
//		String bankNum = "";
//
//		return bankNum;
//	}
//
//	
//	@Override 
//	public boolean getUnpayAccountData()
//			throws BusinessException {
//		
//		String now = TimeUtils.getCurDate();
//		 
//		List<TbSlSupplyPayment> payments = new ArrayList<TbSlSupplyPayment>();
//		String url = "http://b2bi.gome.com.cn/gmol/sellBillQry/query.hlt";
//		
//		Map<String, String> map = new HashMap<String, String>();
//		
//		String etime = TimeUtils.getCurDate();
//		String stime = etime.substring(0, etime.length()-2)+"01";
//		
//		
//		map.put("grnStatus", 1+"");
//		map.put("grnModel.transactionDateStart", stime);
//		map.put("grnModel.transactionDateEnd", etime);
//		
//		map.put("grnModel.vendorTaxno", "110115682862600");
//		map.put("page.pageSize", "50"); 
//		map.put("page.pageNo", "1");
//		map.put("page.totalPages", "1");
//		map.put("page.jumpNumber", "1");
//		
//		String html = HttpClientUtil.doPost(this.getHttpClient(), url, map,Constants.ENCODING);
//		
//		Document doc = MyJsoup.getDocumnetByStr(html);
//		
//		Element table = doc.getElementById("row");
//		
//		if (null != table) {
//			Elements trs = table.getElementsByTag("tr");
//			if(null != trs && trs.size() >0){
//				for(int i=0;i<trs.size();i++){
//					if(i>0){
//						Element tr = trs.get(i);
//						Elements tds = tr.getElementsByTag("td");
//						
//						String balanceOrderId = tds.get(5).text();
//						String balanceStartTime = tds.get(6).text();
//						String balanceAccount = tds.get(10).text();
//						long longamount = getLongAmount(balanceAccount);
//						TbSlSupplyPayment tbs = new TbSlSupplyPayment();
//						 
//						tbs.setCreateDate(balanceStartTime);
//						tbs.setSettlementId(balanceOrderId);
//						tbs.setAmount(longamount);
//						tbs.setPlatformAccountId(getPlatformUser().getId());
//						tbs.setSettlementState(TbSlSupplyPayment.WAITPAY); 
//						payments.add(tbs);
//						
//						LogUtils.info(log,"balanceOrderId-->"+balanceOrderId+"balanceStartTime-->"+balanceStartTime+"balanceAccount-->"+balanceAccount);
//
//					}
//				}
//				
//			}
//			
//		}
//		 
//		getPaymentService().insertInBatch(payments);
//		
//		return true; 
//	}
//
//	@Override
//	public boolean getPayAccountData() throws BusinessException {
//		
//		return true;
//	}
// 
//	@Override
//	public boolean getOutstoreOrderData()
//			throws BusinessException {
//		
//		return true;
//	}
//
//	@Override
//	public boolean getInstoreOrderData()
//			throws BusinessException {
//		
//		return true;
//	}
//
//	
//
//}
